package com.logic.landseaserver.persistence.read;

import java.util.HashMap;
import java.util.List;

import com.logic.common.util.QueryUtil;
import com.logic.landseaserver.domain.Customer;
import com.logic.landseaserver.ws.dto.ChapterUserDTO;
import com.logic.landseaserver.ws.dto.CustomerDTO;
import com.logic.landseaserver.ws.response.TenantDetailResp;
import com.logic.landseaserver.ws.response.UserInfoResponse;

public interface CustomerReadMapper {
    Customer selectByPrimaryKey(Integer id);

    Customer selectByUserId(Integer id);

    UserInfoResponse selectCustomerInfo(Integer userId);

    List<Object> getCustomerList(QueryUtil queryUtil);

    List<Object> getCustomerPage(QueryUtil queryUtil);

    CustomerDTO selectCustomerDTO(Integer id);

    List<Integer> getCustomersById(String ids);

    CustomerDTO getCustomersByUserId(Integer id);

    CustomerDTO selectCustomerDTOByLoginId(String loginId);

    CustomerDTO selectCustomerDTOByUserId(Integer userId);

    List<ChapterUserDTO> selectChapterUserList(QueryUtil queryUtil);

    List<TenantDetailResp> queryTenantDetail(String phone,String projectIds);

    List<TenantDetailResp> queryTenantDetailByArea(String areaSql, String phone);

    TenantDetailResp queryTenantDetailByPhone(String phone);

    List<TenantDetailResp> queryTenantDetailOfContract(String phone, String projectSql);

    List<Customer> checkExistIDNo(HashMap map);
}